export interface Ifield {
  name: string;
  description: string;
}

interface IMenubarII {
  sign?: string;
  url?: string;
  icon?: string;
  sortIndex?: number;
  fields?: Array<Ifield>;

  parentId?: number | string;
  id?: number | string;
  name: string;
  path?: string;
  redirect?: string | { name: string };
  hasFullScreen?: boolean;
  meta: {
    icon: string;
    title: string;
    permission?: Array<string>;
    activeMenu?: string;
    noCache?: boolean;
    hidden?: boolean;
    fullScreen?: boolean;
  };
}

export interface IMenubarIIList extends IMenubarII {
  component: () => Promise<typeof import('*.vue')> | string;
  children?: Array<IMenubarIIList>;
}
